﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Chenxin.Lib.House.BLL
{
    public class House_ViewOwerInfo
    {
        #region  成员方法

        //*******************************************
        //功能概要       ：添加查看房源业主信息的记录
        //参数説明       ：
        //返回值説明     ：
        //功能詳細       ：添加查看房源业主信息的记录
        //作成者         ：姚志强
        //作成日         ：2010-03-01
        //修改者         ：
        //修改日         ：
        //*******************************************
        public static void AddHouseViewOwerInfo(Chenxin.Lib.House.Entity.House_ViewOwerInfo viewOwnerInfo)
        {
            try
            {
                //添加查看房源业主信息的记录
                Chenxin.Lib.House.DAL.House_ViewOwerInfo.Add(viewOwnerInfo);

                //操作内容
                string oprContext = viewOwnerInfo.Employee + "查看了房源:" + viewOwnerInfo.HouseCode + "的业主信息";

                //写入房源跟单

                AddTraceInfo(viewOwnerInfo, oprContext);

                //插入系统操作日志
                string oprType = "查看业主信息";

                AddHouseUserLogs(viewOwnerInfo, oprType, oprContext);

            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        //*******************************************
        //功能概要       ：添加房源跟单
        //参数説明       ：
        //返回值説明     ：
        //功能詳細       ：添加房源跟单
        //作成者         ：姚志强
        //作成日         ：2010-03-01
        //修改者         ：
        //修改日         ：
        //*******************************************
        private static void AddTraceInfo(Chenxin.Lib.House.Entity.House_ViewOwerInfo viewOwnerInfo, string oprContext)
        {
            try
            {
                Chenxin.Lib.House.Entity.House_TraceInfo traceInfo = new Chenxin.Lib.House.Entity.House_TraceInfo();

                traceInfo.TraceId = Guid.NewGuid();
                traceInfo.TraceType = 0;
                traceInfo.TraceContext = oprContext;
                traceInfo.TractorId = viewOwnerInfo.ViewEmployeeId;
                traceInfo.Tractor = viewOwnerInfo.Employee;
                traceInfo.DepartId = viewOwnerInfo.ViewDepartId;
                traceInfo.Depart = viewOwnerInfo.Depart;
                traceInfo.HouseId = viewOwnerInfo.HouseId;
                traceInfo.HouseCode = viewOwnerInfo.HouseCode;
                traceInfo.HouseAddress = viewOwnerInfo.HouseAddress;
                traceInfo.TraceTime = DateTime.Now;

                Chenxin.Lib.House.Entity.House_TraceInfo ht = Chenxin.Lib.House.DAL.House_TraceInfo.GetModel(viewOwnerInfo.HouseId);

                traceInfo.OprDepart = ht.OprDepart;
                traceInfo.OprDepartId = ht.OprDepartId;
                traceInfo.OprPerson = ht.OprPerson;
                traceInfo.OprPersonId = ht.OprPersonId;

                Chenxin.Lib.House.BLL.House_TraceInfo.AddHouseTraceInfo(traceInfo);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        //*******************************************
        //功能概要       ：插入系统操作日志
        //参数説明       ：oprType  操作类型: 1 [添加],  2 [修改]
        //返回值説明     ：
        //功能詳細       ：插入系统操作日志
        //作成者         ：姚志强
        //作成日         ：2010-03-01
        //修改者         ：
        //修改日         ：
        //*******************************************
        private static void AddHouseUserLogs(Chenxin.Lib.House.Entity.House_ViewOwerInfo viewOwnerInfo, string oprType, string oprContext)
        {
            try
            {
                //添加日志
                Chenxin.Lib.House.Entity.House_UserLogs userLogs = new Chenxin.Lib.House.Entity.House_UserLogs();

                userLogs.RecordId = Guid.NewGuid();
                userLogs.UserId = viewOwnerInfo.ViewEmployeeId;
                userLogs.UserName = viewOwnerInfo.Employee;
                userLogs.DepartId = viewOwnerInfo.ViewDepartId;
                userLogs.DepartName = viewOwnerInfo.Depart;
                userLogs.OprType = oprType;
                userLogs.OperationContext = oprContext;
                userLogs.Addtime = DateTime.Now;

                Chenxin.Lib.House.BLL.House_UserLogs.AddHouseUserLogs(userLogs);

            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        #endregion 成员方法

    }
}
